Skip to content

Latest commit

 

History

History
87 lines (76 loc) · 1.71 KB

File metadata and controls

87 lines (76 loc) · 1.71 KB

217. Contains Duplicate

Given an array of integers, find if the array contains any duplicates.

Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct.

Example 1:

Input: [1,2,3,1] Output: true 

Example 2:

Input: [1,2,3,4] Output: false 

Example 3:

Input: [1,1,1,3,3,4,3,2,4,2] Output: true 

Solutions (Rust)

1. Set-len

use std::collections::HashSet;implSolution{pubfncontains_duplicate(nums:Vec<i32>) -> bool{ nums.len() > nums.iter().collect::<HashSet<_>>().len()}}

2. Linear Scan

implSolution{pubfncontains_duplicate(nums:Vec<i32>) -> bool{let len = nums.len();for i in0..len {for j in(i + 1)..len {if nums[i] == nums[j]{returntrue;}}}false}}

3. Set-contains

use std::collections::HashSet;implSolution{pubfncontains_duplicate(nums:Vec<i32>) -> bool{letmut set = HashSet::new();for n in nums {if set.contains(&n){returntrue;}else{ set.insert(n);}}false}}

4. Sort

implSolution{pubfncontains_duplicate(nums:Vec<i32>) -> bool{letmut nums = nums; nums.sort_unstable();for i in1..nums.len(){if nums[i - 1] == nums[i]{returntrue;}}false}}
close